//// 类的定义
//class Animal{
////     属性（成员变量）
//    String name;
//    int age;
//
//    public Animal(String name){
//        this.name = name;
//        System.out.println("构造方法被调用");
//    }
//    void bark(){
//        System.out.println(name + "can bark");
//    }
//}
//
//class Main{
//    public static void main(String args[]){
//        Animal dog = new Animal("dog");
//        dog.bark();
//    }
//}
//class Dog {
//    String name;
//
//    public Dog(String name) {
//        this.name = name;
//    }
//
//    public Dog getCurrentObject() {
//        return this;  // 返回当前对象
//    }
//
//    public void displayName() {
//        System.out.println("The dog's name is: " + name);
//    }
//}
//
//public class Main {
//    public static void main(String[] args) {
//        Dog dog = new Dog("Buddy");
//        dog.displayName();  // 输出: The dog's name is: Buddy
//
//        Dog anotherDog = dog.getCurrentObject();  // 获取当前对象
//        anotherDog.displayName();  // 输出: The dog's name is: Buddy
//    }
//}

class Box<T> {  // T是占位符，代表任何类型
    private T value;

    public void setValue(T value) {
        this.value = value;
    }

    public T getValue() {
        return value;
    }
}

public class Main {
    public static void main(String[] args) {
        Box<String> stringBox = new Box<>();  // 创建一个装String的盒子
        stringBox.setValue("Hello");
        System.out.println(stringBox.getValue());  // 输出"Hello"

        Box<Integer> intBox = new Box<>();  // 创建一个装Integer的盒子
        intBox.setValue(123);
        System.out.println(intBox.getValue());  // 输出123
    }
}

